home *** CD-ROM | disk | FTP | other *** search
/ Games of Daze / Infomagic - Games of Daze (Summer 1995) (Disc 1 of 2).iso / x2ftp / books / game / tricks.rev < prev    next >
Encoding:
Internet Message Format  |  1994-09-10  |  11.2 KB

  1. From: mickwest@aol.com (Mickwest)
  2. Newsgroups: rec.games.programmer
  3. Subject: Review of "Tricks of the Game Programming Gurus"
  4. Date: 20 Aug 1994 19:53:03 -0400
  5.  
  6. Review of "Tricks of the Game Programming Gurus". LaMothe, Ratcliff,
  7. Seminatore & Tyler. Pub. SAMS Publishing (Macmillan), ISBN 0-672-30507-0.
  8.  
  9.  It's amazing what they put on the back of books these days. You truely
  10. cannot judge a book by its cover anymore. The blurb on this book states
  11. "Create your own exciting, action packed, award-winning interactive
  12. games",  "Master advanced bitmap graphics, artificial intelligence, 3-D
  13. graphics, I/O basics, high-speed 3-D sprites, and character animation",
  14. "Develop dazzling art, ...", and, most misleadingly, "Gain a solid
  15. understanding of the programming techniques used for 3-D games such as
  16. Doom".
  17.  
  18.  All a bit of an exaggeration., this book covers a wide range of subjects,
  19. mostly not at a level accessible to an absolute beginner, and mostly at a
  20. level that does not really reach that of a professional prgrammer, let
  21. alone that of a "Game Programming Guru", and certainly not the level of
  22. the authors of "award-winning interactive games".
  23.  
  24.  However, false advertising aside, this is a very useful book for someone
  25. starting out in the field of PC games programming, someone who has some
  26. experience of programming in C and assembly, and a vauge understanding of
  27. the terminology.
  28.  
  29.  The book plunges you in at the deep end with an introduction to Assembly
  30. language, and the first few chapters all deal with technical PC related
  31. topics that provide a good grounding in the subject, providing you already
  32. know something about it.
  33.  
  34.  The book names four authors, but all but two of the nineteen chapters are
  35. written by Andre LaMothe, and I find his style to be rather off the cuff,
  36. with lots of glib little remarks. It seems almost as if he wrote the book
  37. in one sweep, off the top of his head with little thought to how the
  38. readers will view what he has written.
  39.  
  40.  What he writes will make perfect sense to him, it mostly makes perfect
  41. sense to me, but then I've been programming games for ten years. But to
  42. someone who knows little about the subject, I feel that this book will be
  43. very dificult to get into. LaMothe unconciously assumes a certain level of
  44. understanding that is not going to be there.
  45.  
  46.  Take the explanation of double buffering:
  47.  
  48. (Page 150)
  49.  "Method one is double buffering. The entire screen is draw on an
  50. off-screen buffer, then the entire screen is blasted to the video buffer
  51. at once. This minimizes messing with all the small sections of the video
  52. buffer, and does its job in one big movement of data."
  53.  
  54.  He then shows a graphical example, with the size of the buffer
  55. incorrectly show as 14,000 bytes (A typo, sure, but a very obvious one).
  56.  
  57.  Sure, you can understand the explanation, if you already know what it
  58. means. But what if you have never heard of double buffering before? The
  59. explantion does not make it clear that it is the contents of the
  60. off-screen buffer that are "blasted" to the video buffer. It reads like:
  61. "Draw the screen off screen, then blast the screen into the video buffer".
  62.  
  63.  The whole book is ladened with good intentions, but this lack of
  64. understanding prevents them from coming through. As well as being
  65. confusing the style can be annoying at times, take page 718
  66.  
  67. "I feel as if I've left you out to dry by not putting sprites into the
  68. world. I'm sorry, but I really want you to do this yourself. It will build
  69. your character. I will give you some hints though."
  70.  
  71.  BUILD MY CHARACTER! Heck Andre, I bought the book to learn about video
  72. games, if I want to build my character I would have have gone to the
  73. "Personal Growth" section of the bookstore. Still, I suppose he could be
  74. joking, it's difficult to tell.
  75.  
  76.  The most misleading thing on the back of the book is the claim that it
  77. will tell you how to program games like Doom. This is a WILD exaggeration.
  78. All it does is provide you with a VERY simple ray-casting engine of the
  79. type used in Wolfenstein. Doom is a whole order of magnitide more complex
  80. than this, even if we only look at rendering the walls and floors. All the
  81. game logic and frightfully complex data structures in Doom are not even
  82. touched on in the book.
  83.  
  84.  This failure of this book to deliver what it claims just makes me realize
  85. the sheer immensity of the task. What is explained in the book is usually
  86. explained very well. However it is the middle of the explanation, missing
  87. out the basics needed for understanding, and stopping short of the level
  88. required for commercial games. If the book were to go into the kind of
  89. detail required to fulfill its claims, it would be around five thousand
  90. pages long. In the 744 pages it has now it performs a useful task.
  91.  
  92.  With my stated reservations in mind, the chapters on algorithms and
  93. synthetic inteligence are quite good. The explanation of finite-state
  94. machines is very good, considering FSMs are an important concept in
  95. advanced games programming.
  96.  
  97.  Andre is not a Game Programming Guru. He seems to write about things that
  98. he has never even tried before. Take his explanation of recording a demo
  99. mode on page 453. He basicly says you should sample the state of the
  100. joystick every 1/10th of a second and record this to be played back later.
  101.  
  102.  Anyone who has ever done a demo mode can tell you that this approach will
  103. simply not work. If the recorded joystick inputs do not match exactly with
  104. the actual inputs for EVERY game loop, then they will swiftly get out of
  105. sync. Even an error of one frame, or as little as 1/70th of a second will
  106. swiftly accumalate and cause the demo to go wrong. 
  107.  
  108.  Andre actually admits that this approach does not work, on page 717 "...
  109. none of the techniques I used took into consideration the temporal aspects
  110. of the game and its lack of synchronous timing". It seems Andre has never
  111. written a demo mode before. Looking at his profile, it also seems he has
  112. never worked in the games industry before.
  113.  
  114.  Is the book worth buying. Well, you have to weigh several factors. It
  115. costs $45, though you get a CD with that. It does not really do what it
  116. claims to do. But it does give an excellent (for all its faults)
  117. introduction to the art of programming PC games. It assumes a certain
  118. level of knowledge and is not suitible for the total beginner in games
  119. programming.
  120.  
  121.  The title is misleading, and I'm sure it is only like that as a follow up
  122. to "Tricks of the Graphics Gurus". The text on the back of the book is
  123. misleading, and there is no excuse for that.
  124.  
  125.  It's a nice reference book to have on the shelf, but don't rely on it
  126. alone to teach you what you need to know. Like any aspect of programming,
  127. you learn by example and experimentation. This book is a very useful
  128. source of examples and basic knowledge. But does not live up to its
  129. claims.         
  130.  
  131. Mick West.   (Mickwest@aol.com)
  132.  
  133.  
  134.  
  135. From: Lee Lorenz <llorenz@delphi.com>
  136. Newsgroups: rec.games.programmer
  137. Subject: Re: Review of "Tricks of the Game Programming Gurus"
  138. Date: Sat, 20 Aug 94 22:20:53 -0500
  139.  
  140. That was a pretty good review of the book, except I have to disagree with you
  141. on the conclusion that a total beginner might be lost... this book is a pretty
  142. good introduction to the basic concepts, and I think it would be well served
  143. to be followed by books on specific subjects, like Raycasting engines (The
  144. book promises a DOOM-like engine, but it is actually more Wolfenstein-like;
  145. that is no ceilings or floors). Like Flights of Fancy, any book attempting
  146. to explain Game Programming from scratch can't possibly cover advanced
  147. subjects.
  148.  
  149. To SAMS credit on the user-level, the back clearly states "Intermediate-Advanced
  150. I think this is a good starting point for a more advanced series by SAMS,
  151. and I would like to suggest the following titles:
  152.  
  153.                 Puzzle Type
  154.                 Scrolling Shoot-em ups
  155.                 Raycasting Engines
  156.                 Flight Simulators
  157.                 Adventure Games (RPG)
  158.                 War Games
  159.  
  160. Also, I would like to have seen more reference to 32-bit C compilers. Oh well.
  161.  
  162.                     Lee
  163.  
  164. From: rompel@bilge.water.ca.gov (David Rompel)
  165. Newsgroups: rec.games.programmer
  166. Subject: Re: Review of "Tricks of the Game Programming Gurus"
  167. Date: 21 Aug 1994 07:22:59 GMT
  168.  
  169. ****************************************************************
  170. Inserted later in reply to request for permission ot include my
  171. usenet post in the review:
  172.  
  173. Please excuse any offensive/stupid remarks in the following.
  174. I was rather frustrated with the lack of depth of the material.
  175. As it turns out I did not return the book as I originally planned
  176. but gave to to a friend who it would be more appropriate for.
  177. Except for the emotional harping my opinion still
  178. stands...  It lacks the depth to be of much use except as a 
  179. introduction to game programming...  
  180.  
  181. In basic I completely concure with the formal review by
  182. mickwest@aol.com 
  183.  
  184. Please send all flames to /dev/null as I don't need or want them
  185. and to the Author & Publisher sorry but these are my opinions as
  186. a consumer and competant programmer ( though poor speller ).
  187.  
  188. These these opions are mine and do not reflect those of this
  189. site or my employer!T
  190. *****************************************************************
  191.  
  192. I must concure with the basic review,  TOTALLY MISLEADING CLAIMS
  193. of being a way to learn how to  develop leading edge programs.
  194.  
  195. This book has value to those who want to understand the basics
  196. but never really do anything with them.  OOPS I'm flaming.....
  197. I was happy with it as an intro to many subjects, but feel it
  198. lacks ANY depth at all.  It would be one thing to brush on the
  199. sujects and then have the really knarly code only available on
  200. the disk, but this and several other books I won't mention have
  201. left me with the feeling that they was cranked out ASAP as a 
  202. means for income not for the more pure reason of actually giving
  203. people a useful/strong background and lots of examples of code
  204. to really do great things.
  205.  
  206. The major problem, is this is not a simple subject.  To do anything
  207. really cool you have to learn the basics (this book shows many of them)
  208. Then really bang something of consequence out.  The idea that any
  209. 1 book could show you how to develop leading edge games is hard to
  210. believe, if the claims are big there's should be a requirement to 
  211. deliver.
  212.  
  213. For anyone out there writing/delivering a book someday on the same
  214. Please deliver whats advertised.  
  215.  
  216. If your delivering a CD, FILL IT with the stuff off x2ftp.oulu.fi
  217. and ftp.uwp.edu.  These are my favorite resources next to Foley's
  218. book (essentially the bible of graphics programming & algorythms)
  219. The files off the net are the kinds of resources that people really
  220. can use and it's an injustise to not redistribute everything that
  221. is available, and if you have time/space review or reference it.
  222. All of this stuff is freely redistributable and difficult to obtain
  223. to all but the maddest FTP'ers ( ~ 75Megs )
  224.  
  225. Let me finish this note off by saying that I did find a few 
  226. informative portions and I am no sloch of a programmer (spelling maybe)
  227. This book will be of value to novice game programmers, but has little
  228. value to anyone who has plans to write bleading edge games..
  229.  
  230. I was jsut a little offended by the lack of hard details and a 
  231. completed program in any of the many types covered.  There were 
  232. interesting starting points but no real depth.  The idea that 
  233. such an incomplete book be advertised as anything but basic game
  234. programming is.......
  235.  
  236.  
  237. Sorry if I've offended the author, but my oppions needed to be
  238. voiced.
  239.